<?php
class Capacitacion_model extends CI_Model {
    
	//constructor de la clase
    function __construct() {
        //LLamar al constructor del Modelo
        parent::__construct();
    }
	
	function capacitaciones($id_capacitacion=NULL)
    {
        $where=" WHERE estado=1 ";
        $band=false;
        if ($id_capacitacion!=NULL) {
            $where.=" AND id_capacitacion = $id_capacitacion";
            $band=true;
        }
        
        $q="SELECT * FROM edp_capacitacion c INNER JOIN edp_area a USING(id_area) ".$where;
        $query=$this->db->query($q);

        if ($band) {
            $r=(array)$query->row();
        } else {
            $r=$query->result_array();
        }        

        return $r;
    }

  function  guardar_capacitacion ($info)
    {
        extract($info);
        $q="INSERT INTO edp_capacitacion(`nombre`, `id_area`, `estado`) 
                VALUES ('$nombre', '$area', '1');";
        $query=$this->db->query($q);
    }
  function  actualizar_capacitacion ($info)
    {
        extract($info);
        $q="UPDATE edp_capacitacion  SET nombre ='$nombre', id_area =$area WHERE id_capacitacion= $id_capacitacion";
        $query=$this->db->query($q);
    }



function eliminar_capacitacion($id)
{
    $q="UPDATE edp_capacitacion SET estado = 0 WHERE id_capacitacion = ".$id;
    $query=$this->db->query($q);   
}

function areas($id_area=NULL)
{
        $where="";
        $band=false;
        if ($id_area!=NULL) {
            $where="WHERE id_area = $id_area";
            $band=true;
        }
        
        $q="SELECT * FROM  edp_area  ".$where;
        $query=$this->db->query($q);

        if ($band) {
            $r=(array)$query->row();
        } else {
            $r=$query->result_array();
        }        

        return $r;
}
function eliminar_area($id)
{
    $q="DELETE FROM edp_area  WHERE id_area = ".$id;
    $query=$this->db->query($q);   
}
function actualizar_area($info)
{
    extract($info);
    $q="UPDATE edp_area SET area='$area'  WHERE id_area = ".$id_area;
    $query=$this->db->query($q);   
}
function guardar_area($info)
{
    extract($info);
    $q="INSERT INTO edp_area(area)  VALUES('$area') ";
    $query=$this->db->query($q);   
}

function top_capacitaciones($id_edicion=NULL)
{

        $q="SELECT
        c.*,
        estado, estadot
    FROM
        (
            SELECT
                id_capacitacion,
                c.nombre,
                a.area,
                COUNT(id_capacitacion) AS cant
            FROM
                edp_cap_solicitada
            INNER JOIN edp_capacitacion c USING (id_capacitacion)
            INNER JOIN edp_area a USING (id_area)
            INNER JOIN edp_asignacion ag USING (id_evaluacion)
            WHERE
                id_edicion = $id_edicion
            GROUP BY
                id_capacitacion
        ) AS c
    LEFT JOIN (
        SELECT
            id_capacitacion, 
            'Enviada' as estadot,
                1 as estado
        FROM
            edp_capacitacion_programada
        WHERE
            id_edicion = $id_edicion
    ) AS cp ON cp.id_capacitacion = c.id_capacitacion
     -- WHERE  cp.id_capacitacion IS NULL";   ///hay que descomentar esto para no mostrar aquellas que ya estan programadas
    $query=$this->db->query($q);  
    return $query->result_array();

}
function get_empleados_capacitacion($id_capacitacion='', $id_edicion='')
{
    $q="SELECT
            id_empleado, 
            id_capacitacion
        FROM
            edp_cap_solicitada
        INNER JOIN edp_asignacion USING (id_evaluacion)
        WHERE
            id_capacitacion = $id_capacitacion AND id_edicion = $id_edicion
        GROUP BY
            id_empleado";
    $query=$this->db->query($q);  
    return $query->result_array();
}

function guardar_programada($id_capacitacion='', $id_edicion='')
{
        $q="INSERT INTO edp_capacitacion_programada(id_capacitacion, id_edicion) VALUES ($id_capacitacion, $id_edicion);";

    $query=$this->db->query($q);  

}

}
?>